home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Internet
/
Collection of Internet.iso
/
faq
/
comp
/
ibm_rt_f
/
aix_v2
/
software
/
part2
< prev
next >
Wrap
Internet Message Format
|
1994-04-03
|
44KB
Path: bloom-beacon.mit.edu!hookup!news.moneng.mei.com!howland.reston.ans.net!europa.eng.gtefsd.com!emory!swrinde!news.uh.edu!lobster!antimatr!faq-rt
From: faq-rt@antimatr.hou.tx.us (Mark Whetzel)
Newsgroups: comp.sys.ibm.pc.rt,comp.unix.aix,comp.answers,news.answers
Subject: COMP.SYS.IBM.PC.RT: AIX V2 FAQ - Software questions, Part 2 of 3
Summary: This posting contains Frequently Asked Questions (and their answers)
on software issues when using AIX V2.2.x on IBM RT (615x) computers.
Plus general information, hints and tips.
Keywords: IBM RT PC software FAQ 6150 6151 6152 AIX VRM AOS MACH PICK
Message-ID: <ibmrt_aixv2s2_765425273@antimatr.hou.tx.us>
Date: 4 Apr 94 02:08:33 GMT
Expires: 17 May 94 02:07:53 GMT
References: <ibmrt_aixv2s1_765425273@antimatr.hou.tx.us>
Sender: markw@antimatr.hou.tx.us
Reply-To: aix-rt@antimatr.hou.tx.us
Followup-To: comp.sys.ibm.pc.rt
Lines: 963
Approved: news-answers-request@MIT.Edu
Supersedes: <unknown>
Xref: bloom-beacon.mit.edu comp.sys.ibm.pc.rt:1496 comp.unix.aix:23021 comp.answers:4431 news.answers:17303
Archive-name: ibm-rt-faq/aix-v2/software/part2
Last-modified: Sat Mar 12 07:08:12 CST 1994
Version: 1.1
Frequently Asked Questions for: AIX V2.2.1 on IBM RT systems.
System Software topics for AIX/RT.
Part 2 of 3 parts.
The AIX V2 FAQ currently consists of EIGHT parts in 5 topic areas:
AIX V2 FAQ Index and acknowledgements
AIX V2 OS Specific hardware issues - in one part (currently).
AIX V2 Software questions - in three parts. (This FAQ)
AIX V2 Problem Questions and answers - two parts.
AIX V2 Porting software notes - in one part currently.
See the AIX V2 FAQ index posting for a complete index of the AIX FAQ postings.
================================================================================
2.0 Software questions (continued).
S.13 - How to managage serial ports.
NOTE: Printer/plotter serial devices are automatically defined
with port and speed parameters when adding that device type
under the printers menu. For more information about adding
printers see sections H.14 and S.28. The following is for
terminal, modem and other serial device types.
The devices command is used to add, change and delete serial port
settings, and how the getty will operate with that serial port.
The devices command will automaticlly detect any attached serial port
hardware and present them in the "Following adapters are available" menu.
devices
add
ttydev
tty
<..Following adapters available menu displayed>
< a new panel comes up showing terminal type>
Most serial ports will need other information such as speed,
parity, and stop bit settings, but this first panel presented does
not have them. Fill in the displayed settings with your requirements
as show on this menu. Some common options:
'ae' = true (meaning enable always, more on this later).
davm = 1 (1=modem, 0=direct attached)
tt = to any string matching /usr/lib/terminfo available terminal
type most likely to call your system.
If unknown, set it to 'dumb'.
The critical part of this panel is the 'ae' option. Set it to 'true'
(meaning 'enable') for a dial-in only port. A getty task will be
started continually waiting for logins. When 'ae' is set to 'share'
or 'delay' the getty operation is altered for bi-directional (call-in
and call-out), operation. By using 'delay' this will setup the getty
to run similar what other UNIX systems call a 'uugetty'.
With 'ae' set to 'false' no getty will be started for this serial port,
and it may be used directly by application programs for I/O purposes.
Application programs or system functions (cu, ate, uucico, ect..) may
use the serial port without at anytime.
Press enter to bring up a yes/no question about changing more
options.. enter 'yes'.
A Larger panel will appear allowing you to choose the baud rate, and
other serial settings, such as stop bits, xon/xoff and other
common selections for serial ports.
Some common options for attaching a modem:
bpc = bits per character
rts = speed of the port
sns = false (switched or dial-in port)
aa = true (auto answer)
pt = parity type (odd,even,none,mark,space)
nosb = number of stop bits.
Default any options you don't clearly understand.
The devices command will change the system so that the getty for the
port will be started each time the system is booted. To change the
status of the getty while booted and only for the current life of
this IPL, use the pstart, pdisable, penable or pdelay commands to
change the port status to the desired state. Issuing the 'pstart'
command with no options will display all current tty port status.
* penable - causes the getty to run all the time, and it will
present a login banner when the port detects carrier, and
modem ready. The 'penable' command also keeps the port locked
all the time. This command changes the port operation to be the
same as the options devices panel 'ae' set to 'true'.
* pdelay - causes the getty to raise DTR, and wait for carrier
before presenting the login herald, AND to WAIT to 'lock' the
port from other users (if necessary) UNTIL some characters are
actually recived on the port. Some systems call this a 'uugetty'.
This command changes the port operation to be the same as the
devices panel 'ae' set to 'delay'.
* pshare - is similar to pdelay, but it locks the port immediately
on recipt of carrier. (least useful of the options)
Same as the devices panel 'ae' set to 'share'.
* pdisable - causes the getty to be halted for this port, freeing
the port for usage by other programs. DTR will be dropped,
and if a modem is attached and configured correcty, will hang up
any user dialed in, and prevent the modem from answering the line.
Same as the devices panel 'ae' set to 'false'.
To stop ALL tty ports at once, use 'pdisable -a'.
NOTE: A few notes on the 'pro' (protocol) parameter on the devices menu.
Protocol has three diffent settings:
cdstl = Connect Data Set To Line.
[ I have not figured out what this one does - MW ]
dc = Direct Connect = CTS lead examined for pacing
(on the RT native port, Pin #8).
dtr = Data Termnal Ready = DTR lead examined for pacing
(on the RT native port, Pin #2).
Depending on the cable attached, the 'pro' keyword can
have a radically different meaning. For the modem cable,
and to use 'hardware' handskake instead of xon/xoff set the
'protocol' to 'dc' and 'ixp' to 'false' on the devices port panel.
That cable has the CTS lead conneted to the CTS pin on the
25 pin modem side of the cable. This will utilize RTS/CTS pacing.
When using the serial printer cable, the CTS pin on the RT side
is connected to 'DTR' on the printer. Some printers use the
DTR lead to control hardware pacing, and if so, you should have
'pro = dc' for this to work correctly, instead of 'pro = dtr'.
[Confusing, yes? - MW]
Unique to AIX/RT is the '/etc/ports' file. Entries in this
file control various aspects of serial ports. This file is
a stanza format file. There is one stanza for each device
port, and two special stanzas 'default' containing defaults for
all ports, and 'console' meaning the system hft console.
The file has the following format:
device:
option = value
The following options can be of assitance with UUCP setup
lock= true. This stanza is CRITICAL for a shared
dial-in/dial-out bi-directional use port.
No command adds this stanza, and it is not
added by default, but without it, port locking
will not be handled coorecty amoung the
getty,cu,ate and uucico programs.
enabled = Set by devices to the value of the 'ae' field.
values: true, delay, share, or false. Corresponding
to penable, pdelay, pshare or pdisable.
speed= Initial port speed. Not documented is the fact
that a comma delimited list of speeds is availabe
and that getty will rotate thru the list presenting
the hearald in the specified speed on recipt of
a 'break' signal.
parity= parity to use, set by devices command,
values: odd,even,none,mark and space. Can also
be a comma delimited list like 'speed' above.
hearld= The chracter string presented by the getty for
a login greeting.
term= Sets the string that the TERM envionment variable
will be set to upon successful login.
logmodes= Port characteristics during login processing.
runmodes= Port characteristics set after login complete.
Here is an example Telebit trailblazer T1600 setup that seems to work
with the RT UUCP, using hardware flow control.
==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
Submitter: herb@ajfcal.UUCP
Date: 21 May 91 13:40:50 GMT
[ initial netnews discussion on UUCP troubles deleted - MW ]
Sounds like you're having flow control problems... I just overcame
the same thing when I upgraded the OS on my RT.. (CorrSrvc 1773).
I just couldn't get hardware flow control working to save my life
but this weekend I sat down for a couple of hours and got it working
with my "DCA Fastlink" (Trailblazer Clone).
In "devices", I have:
pro dc
ixp false
dvam 0 [ I think he would have less trouble with dvam=1 - MW ]
sns false
aa false
and in the telebit, I have:
E0 F1 M0 Q1 T V1 X3 Version AA3.00-AB3.00
S00=001 S01=000 S02=043 S03=013 S04=010 S05=008 S06=002 S07=060 S08=002
S09=006 S10=007 S11=070 S12=050
S45=000 S47=004 S48=001 S49=000
S50=000 S51=005 S52=002 S53=001 S54=003 S55=003 S56=017 S57=019 S58=002
S59=000 S60=000 S61=099 S62=003 S63=001 S64=000 S65=000 S66=001 S67=000
S68=002 S90=000 S91=000 S92=000 S95=000
S100=000 S101=000 S102=000 S104=000
S110=255 S111=255 S112=001
S121=000
Other Pertinent information: 6150-25, IBM 4 port async, and standard
IBM Modem cable.
There's still a problem with Carrier Detect and getty... It seemed to
a choice between having hardware flow control or having getty work
right... But if you're using it to dial out only, then you shouldn't
have to worry about that...
==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
------------------------------
S.14 - How to add user accounts to AIX V2.
Also covers the various /etc/security stanza file contents.
To create or update a group or a user, you must have superuser
authority. Use the "users" or "addusers" command.
Example:
# users
> a g groupname add a group
> c g groupname change a group
> a u username add a user
> c u username change a user
> ? help
> q quit
The AIX/RT system uses a secondary security system similar to
some systems with a shadow password file. The /etc/passwd file
and /etc/group files do not contain the actual password. Instead an
explanation mark (!) is used as a place holder indicating that the
password is located in the /etc/security directory in the file of
the same name.
WARNING: At some update levels of AIX/RT, the 'sysck' command,
called by the 'adduser' command can cause password file corruption
if any of the files have been edited by hand. The sysck comand
is supposed to verify that the date/time stamps on on the
/etc/passwd and /etc/security/passwd files match and that the
internal stanzas are matching between the various files in
the /etc/security directory. The sysck command attempts to
modify the /etc/security/passwd file to correct any tampering.
This modification can cause corruption of the /etc/security
stanzas can make your system unable to be logged into.
Systems earlier than 2704 do not have the problem, and
systems with 2706 on or later do not have the problem.
An AIX/RT password entry can have the following parts:
george:!:200:1:User George/600000;description:/u/george:/bin/sh
^ ^ ^ ^ ^ ^ ^ ^ ^
A B C D E F G H I
Description:
A - Username
B - Password place holder. An asterix (*) will make the password
invalid. If null, no password is assigned, but the 'sysck'
program will not allow this. See the /etc/security/passwd
file description for more information.
C - User id number. Numbers below 100 are reserved for system use.
User account numbers below 20 are privlidged users, and are
allowed logins at any time regardless of system load, maxusers,
or other system restrictions.
D - Group number.
E - Name field
F - Optional ulimit size (update level 2704 or greater)
from the 'filesize' adduser field.
Maximum user file size in 512 byte blocks. If this field is
omitted, the preceeding slash (/) must be omitted.
G - Siteinfo field contents. NOTE: A colon in this field is NOT
allowed. If this field is omitted the preceeding semicolon (;)
must also be omitted.
H - Home directory. As installed AIX defaults the home directory
to the /u filesystem. Any valid filesystem may be used for
home directories.
I - Initial program to execute. Maximum size 4096 characters and
14 parameters.
The /etc/security directory contains several stanza files that
further control the user login process.
audit - directory containing audit subsystem control files.
config - stanza file to control login operations.
group - current shadow group file.
ogroup - backup copy of shadow group file created by
the adduser command before the last change.
grpchk - executable program to verify group file.
passwd - current shadow password file.
opasswd - backup copy of shadow passwd file created by
the adduser command before the last change.
pwdchk - executable program to verify password file.
sysck.cfg - configuration file for the sysck command.
The /etc/security/passwd file is a stanza form file with one
stanza for each user. An example is like this:
guest:
password = *
restrictions = nologin
george:
password = xxyy123456789
lastupdate = 733115124
Valid stanza fields are:
password= The users encrypted password. If field is missing or
NULL, the account has no password.
lastupdate= The date on which the user last changed the password.
The value is expressed as the number of seconds since
the epoch (Jan 1, 1970).
Note: If password ageing is in use, setting this field
to zero forces a password change immediately on
next user login.
restrictions= The restrictions stanza controls how the account will
be handled. One benefit of account control allows you
to leave the password unchanged for an account, yet
still prohibit its use. Valid values are:
nologin - Disallow login processing for this account
(telnet and rlogin will not work).
An illegal password entry of '*' also makes
it impossible to login. However, remote
shell 'rsh' is still allowed and 'su - userid'
is still allowed.
nouse - Account is completely disabled.
All login and use of the account is blocked,
including 'su' and 'cron'.
nopw - account is exempt from password ageing.
notsh - Trusted shell use is not allowed.
These may be combined such as "nologin,nopw".
auditclasses= This entry is used with the audit subsystem, and
is the initial audit class for this user. The 'audit'
command updates this field.
The /etc/security/config file is a stanza form file with one
stanza for different elements of AIX/RT security.
One of the 'config' stanzas control password usage and aging.
password:
maxage = 0
minage = 0
minalpha = 0
minother = 0
mindiff = 0
maxrepeat = 8
Valid config entry 'password' stanza fields are:
maxage= Maximum age in weeks of a valid password.
minage= mininum age in weeks, before a change of a password
is allowed.
NOTE: password CANNOT be changed until minage is reached
if it is non-zero.
minalpha= Minimum number of alphabetic characters in a password.
minother= Maximum number of numeric or special characters in password.
mindiff= Minimum number of characters to be different from the
old password.
maxrepeat= Maximum number of identical consecutive characters to
allow in a valid password.
------------------------------
S.15 - 6157 1/4" tape drive special file names.
Due to the hardware design of the standard 6157 tape adapter, only
one adapter can been installed in one RT system. However..
that one drive has 4 different device names:
/dev/rmt0 normal tape device name, rewind on close.
/dev/rmt4 NO rewind on close.
/dev/rmt8 retension tape on open and rewind on close.
/dev/rmt12 retension tape on open, NO rewind on close.
Note: If the NO rewind device name is used with read, after an
open completes, AND an application starts reading, the tape
will be positioned to the EOT side of the next filemark by
close processing.
------------------------------
S.16 - UUCP setup and management.
The AIX/RT system uses the HoneyDanBer variation of UUCP, or BNU
(Basic Networking Utility) as the facility is called. IBM has made
very little change of the BNU facility, however, the way that AIX/RT
controls serial ports requires a few changes.
The suporting IBM documentation is located in the "Managing the AIX
Operating System" manual number SC23-2008, Chapter 9.
An excelent reference book is the "Managing UUCP and Usenet" book
by O'Reilly & Associates ISBN 0-937175-93-5. This book is an excelent
UUCP reference, but AIX/RT requires a few special notes:
1) All the control files for BNU are located in '/usr/adm/uucp'
instead of the '/usr/lib/uucp' or '/etc/uucp' directories.
2) Login accounts created for UUCP should be in group 'uucp'.
I like to use uid numbers between 100 and 199 for uucp use.
(Uids over 200 normally start the standard user range of uids).
The gid 5 is the uucp group, and the accounts should be in that group.
3) Port AND getty control is done via the 'devices' command,
or the port control commands 'pstart,pdelay,pshare,pdisable
and penable'. See section S.13 on serial port managment.
There is no '/etc/inittab' (as SYSV) or '/etc/ttys' (BSD/Xenix),
or '/etc/gettytab' (SunOS). AIX/RT has a unique file called
'/etc/ports'. That file is discssed in more detail below.
4) Serial devices have two names for each port that are quite
helpful, for example the first serial port is called tty0,
and has the following device special files:
/dev/tty0 - standard port, and open blocks until carrier
detect is true.
/dev/ltty0 - Has the equivlent of 'clocal' set and allows
open to complete without carrier.
When setting up the 'Devices' control file, use the /dev/ltty#
entry so that uucico can open the port and be able to send dial
string characters. This is critical, as the modem MUST be setup
to only have CD (Carrier Detect) true only when a real carrier is
detected from the remote end. Most hayes compatible modems when
shipped from the factory have CD forced true at all times. This
is trouble for uucico, as it cannot detect when a session has
failed, and when to hangup.
5) To use the RT to program a modem soft switches, add the tty device
with the modems default port speed and parity, ect...
Edit the /usr/adm/uucp/Devices file and uncomment or add an
entry called 'Direct'.
# ---A direct line so 'cu -ltty0' will work
# Direct tty0 - 9600 direct
Direct ltty0 - 2400 direct
Then use 'cu -l ltty0' to connect using the cu command. You can
now use cu to use the various 'AT' commands of the modems to
program the modem.
As different modems use different soft register values, be sure
to check your modem documentation for the proper values to use.
These register settings described below are for an ATI2400e modem
your modem should have equivlent settings for these functions.
Some the common settings needed are:
S0=1 Number of rings to answer.. (If call out only, you
can leave this to zero to never answer the phone.)
&E0 Echo off in command mode. NOTE: This will make command
strings typed with cu not to be echoed back by the
local modem. Use the cu flag '-h' to turn on programmed
echo (half-duplex).
&C0 Carrier follows true carrier.
6) See section S.13 for general serial port control and setup. See
also Q.8 and Q.9 in the Questions section on additional notes on
speed settings and bi-directional ports.
The following /etc/ports options can be of assitance with getting
UUCP setup and operating correctly:
lock= You MUST add 'lock=true'. This stanza is CRITICAL
for a shared dial-in/dial-out bi-directional use
port. No command adds this stanza, and it is not
added by default, but without it, port locking
will not be handled correctly amoung the
getty, login, cu, ct and uucico programs.
NOTE: The 'ate' command regardless of update level
still does not understand shared use ports. You
MUST pdisable the port prior to using ate.
enabled= Set by devices to the value of the 'ae' field.
values: true, delay, share, or false. Corresponding
to penable, pdelay, pshare or pdisable.
hearld= You will most likely want to add this entry to
shorten the login prompt. The default stanza has
a long string of newline characters, and this can
confuse some uucico chat scripts.
------------------------------
S.17 - Setting up networking on an RT running AIX V2.
General steps needed:
- If not installed, install TCP/IP portion of OS.
- Install any VRM driver(s) needed.
- Add hardware adapter (token-ring, ethernet, X.25) to system.
- Define adapter to system with devices.
- Edit /etc/net to set IP address and interface characteristics.
- Edit /etc/hosts to set hostname to IP address association,
and if needed, domain name server address(s).
- Edit the /etc/rc.tcpip file for full system domain name (if needed),
and if necessary, static routes. Uncomment needed services.
- Uncomment the startup of interfaces and networking line in the
file '/etc/rc.include' file.
------------------------------
S.18 - How to set up SLIP - TCP/IP over serial lines.
Open for adoption and filling in.
------------------------------
S.19 - Configuring NFS on AIX V2.
- Different versions of NFS for AIX V2.
- Known unfixed problems with NFS 1.1 on AIX V2.
- Known unfixed problems with NFS 1.2 on AIX V2.
Coming soon ??????
------------------------------
S.20 - Known outstanding problems with AIX V2, unfixed by IBM.
Even with the final update disks applied to the AIX 2.2.1 system
there are some unfortunate bugs still lurking. Some can be corrected
by replacing the offending code with Public Domain replacements.
Others will require more work for repair.
* Opsys:
- ate command will not work on bi-directional ports. Port must be
in a disabled state for it to open the serial port.
- syslog function call will not format variable parameters for more
than three variables.
* TCP/IP:
- named daemon is very old, based on BIND vX.X.
- With 'telnet' terminal type negoation is not always correct
after update 1773. 1779 corrects some of the problems, but not all.
[ This section, unfortunately, will need some expansion. Report your
bugs to me, and I'll see they get added to this list. -MW ]
------------------------------
S.21 What Non-IBM software was available.
* Applix IA.
* Dyalog/APL.
* Interactive Systems INmail/INnet/FTP
* Interleaf Inc. Workstation Publishing system.
* INGRES DBMS
* Oracle DBMS
* RM/COBOL
* RS/1
* Rabbit Systems NETWORK 3270-PLUS, and RJE-PLUS.
* Samna+
* Solomon Sstems SOLOMON III Accounting package.
* SQL/RT
* Sytos/6157 Tape Utilities.
* UNIRAS
* WordPerfect V4.2.
[ If anybody has information on software vendors still activly
selling or supporting their RT software I would like to expand
this section with that information. Phone numbers or
mail/E-mail addresses of companies. - MW ]
------------------------------
S.22 - Setting up and using the PC Simulator.
* Getting DOS/pcsim ready:
1. Use the "installp" program to install the pcsim LPP.
For AIX 2.2.1, only the latest release level of pcsim 1.1.1
will function correctly.
2. Prepare the DOS 3.1 diskettes and one empty diskette (1.2 MB)
IBM PC-DOS 3.3 will also work.
3. Create the working environment:
- Create a simulator user (ex. simuser) Or use an existing
non-root userid.
4. Customize the simulator:
- login as simuser
- create a file to be used a the 'C:' drive by PC DOS:
touch cdrive
- type: pcsim
- fill out the selection menu
Make the 'PC virtual hard disk point to that created file
called 'cdrive'.
- save your customization
5. Start the simulator:
- put the DOS Start diskette in the top floppy drive. This is
drive 'A:' to the simulator by default.
- select START on the pcsim menu
PC DOS will be loaded from the floppy at this point. If the
boot fails, in true IBM PC flavor, you will be dropped into
the 'ROM' basic.
- If all goes well, the PC DOS prompt A> appears.
6. Install DOS on the simulated hard disk:
- type FDISK to create a DOS partition.
- type FORMAT C:/S to format the DOS partition
- use the SELECT command to customize DOS
(for Germany: select 049 gr)
This step will require the empty diskette.
- create the DOS library (C: MKDIR DOS)
- copy the DOS diskette on the disk: copy a:*.* c:\DOS
7. Reboot DOS from 'PC' virtual hard disk:
- remove any diskette from the diskette-drive
- reboot pcsim with <ctl>-<(right)alt>-<del>
NOTE: if you use a color display, make sure to define a BLACK
background and a white foreground, and you won't have color problems!
* Simulator devices
The PC Simulator supports:
- CGA, EGA and APA displays (incl. megapel)
- the serial ports
There are two main rules to follow in dealing with simulator
devices which are not supported by AIX:
1. The Simulator cannot support devices that share interrupt levels.
2. The Simulator does not support devices that use alternate DMA.
* Simulator applications
The following is a short list of applications that have been tested
by IBM at the release of the simulator product.
[This was collected from some ORIGINAL IBM documentation, some
of this information is now very out of date. - MW ]
IBM DOS 3.3
IBM Displaywrite 4 Version 1.02
IBM Storyboard Plus Version 1.01, Update 01
dBase III Plus Version 1.1
Chartmaster Version 6.21
PFS: First Choice Version 2.01
Wordperfect Version 4.2
Lotus 1-2-3 Version 2.01
Microsoft Windows Version 2.03
Flight Simulator Version 2.0
* Defining an adapter to AIX and PCSIM
Allocating an adapter to the Simulator is a three step process:
- You define it to AIX using devices by adding a device of
type 'simdev', say simdev0.
- You define it to PCSIM using the simdev command. For example,
'simdev -a simdev0'.
- You ALLOCATE the device to a session using the -adev0 flag
from the command line when you start the Simulator or by
selecting dev0 from the list of devices you may allocate from
the menu.
You will need to select a display for the Simulator to use in
addition to your allocated adapter. This is because the Simulator
needs to create a process to receive keystrokes.
Only the later version 1.1.1 of the simulator supports an X-window
as a simulator display.
You will need PC software that knows to drive that display adapter.
Note: To verify that the adapter has been properly defined and allocated
you can use DEBUG to display adapter memory. For example:
C>DEBUG
-d c600:0
C600:0000 FF FF FF FF ...
Define the adapter as described above and allocate it.
If the RT does not have the adapter present, you get a series of 'FF'
values when DEBUG reads from the I/O bus. When the adapter is present,
DEBUG would read whatever is in the video buffer on the adapter.
NOTE: The Simulator maps PC segment registers either entirely to the
I/O Bus or entirely to virtual memory on the RT. If you ask
DEBUG to display from segment C5FF (d c5ff:0) you will get a
series of zeroes like '00 00 00 00 ...' and NOT what is on the
adapter. This means that PC software that reads or writes to
an allocated adapter must load a segment register with a value
in the range of the adapter (and not with a lower value expecting
to use a larger offset to get into the adapter memory).
------------------------------
S.23 - Features of the AIX bourne shell.
* Path resolution function
The AIX Bourne shell has a builtin command called "type" which returns
the complete path of the evoked AIX function.
Example: "type ls" -> "ls is /bin/ls"
* Use of the HFT console command editing keys can make the bourne shell
easier to use.
Use the command 'stty enhedit' to turn on the enhanced edit functions
of the hft console. With this enabled, the cursor keys and
function keys F1 thru F3 perform command recall functions and
command line editing.
The function keys perform similar to the IBM PC DOS command
editing keys:
F1 - copy one character at a time from the last command buffer.
F2 - Search for the character in the command line that is
pressed immediately after the F2 key.
F3 - copy command buffer to end of line.
delete - delete character out of the enhanced buffer, shifting
the command line one character to the left from the
current cursor position, until end of line.
insert - turn on insert mode on the command buffer
up arrow, down arrow - scroll forward or backward thru the
command buffer.
right arrow - functions like F1 key, copies on character at a time.
NOTE: If you use the RT Graphics Development Toolkit
"stty enhedit" interferes with the way VDI does mouse input.
You should then use "stty -enhedit" to de-activate the enhanced
editing functions.
------------------------------
S.24 - Floppy disk drive special file names.
The floppy disk driver will attempt to discover what format the
diskette is in when reading. When writing however, you must use
a matching device special file, or I/O errors will result.
name sect trks sides size description
/dev/rfd# 15 80 2 1.2Mb Normal High density
/dev/rfd#.9 9 40 2 360Kb Double side, double density
/dev/rfd#.8 8 40 2 320Kb Double side original PC
/dev/rfs#.9 9 40 1 180Kb Single side, single density
/dev/rfs#.8 8 40 1 120Kb Single side, original PC 64K
------------------------------
S.25 - Minidisk usage notes.
* The number of minidisks is limited as follows:
max 64 minidisks per system
max 47 minidisks per disk unit
* You can use the VRM Maintenance Facility (VMF) to repair a varity of
minidisk problems. It is described in the "AIX Problem Determination
Guide", appendix A.
* If you have a minidisk that is on a disk that is a duplicate IODN number
the system will have problems determining which minidisk to use.
To delete such a minidisk with VRM, do the following:
- Boot with the VRM diskette.
- Take the option of the maintenance menu.
- Use the "qi" command and note the IODN of the minidisk, AND the
drive number, of which you want to delete.
- type "dlmd <iodn> <drive>"
where <iodn> is the concerned IODN number.
and <drive> is the assocaited drive number. (1 thru 3)
- hit <F1>
- type "quit"
------------------------------
S.26 - How to add more pagespace and virtual memory.
Pagespace notes and a program to display usage.
Using the VMF utilities (option 7 from the VRM install diskette's menu),
you can create additional minidisks and give them the "page space"
attribute. This results in multiple paging space minidisks.
This is a simple way to increase paging space, and potentially can
help performance by splitting the paging I/O onto different controllers.
NOTE: Pagespace minidisks cannot be on SCSI disks, as the SCSI drivers
are not loaded unitl after AIX is started. As paging is performed
by VRM, all pagespace minidisks MUST be on the ESDI controllers, and
available at VRM boot time.
WARNING: The location of the FIRST paging space minidisk is an attribute
set by VRM installation, and recorded in the VRM internals. Deleting
or moving this minidisk and recreating it on another drive will cause a
system abort at IPL time with a flashing c6-05.
==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
Here is a program I had in my archives that will display page space
information and disk I/O statistics. I compiled this as 'lsvm' lsvm.c
main()
{
volatile int *pages = (int *) 0xb8; /* page slots unallocated */
volatile int *repcycles = (int *) 0xbc; /* page replacement cycles */
volatile int *iowaits = (int *) 0xc0; /* VM I/O waits */
volatile int *diskio = (int *) 0xc4; /* all non-paging disk I/O's */
printf(" %d = page slots unallocated\n",*pages);
printf(" %d = page replacement cycles\n",*repcycles);
printf(" %d = VM I/O waits\n",*iowaits);
printf(" %d = all non-paging disk I/O's\n",*diskio);
}
==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
Submitter: moody@austin.ibm.com
Subject: Re: Problems with swap space??
Summary: solution to avoid system crashes when your application runs.
Date: 27 Feb 90 22:19:01 GMT
Organization: IBM AWD, Austin, TX
In article <728@duteca4.UUCP> mars@duteca.tudelft.nl () writes:
[much of article deleted]
>It seems to me that the problem is caused by a problem with the swap space,
>so I tried the program on the other RTs and it appeared that the same
>problem occured (although at least one of them didn't crash until at least
>one other extra application was running). I also tried the program on a
>SUN, but couldn't crash it.
>
>Maybe a larger swap space is the solution, but
A larger swap space is the ultimate solution.
>error message could be expected when too much memory has been allocated.
AIX version 2 on the RT uses a delayed allocation scheme for
allocating paging slots to an application. This may result in an
overcommitting of the page space on the RT for some applications which
use a lot of memory on a system with a small paging space. One of our
vendors was the first we knew of to have the problem and I developed a
solution for them. This solution is an easy way for developers to
port these large, memory consuming apps. Applicationss originally
written for BSD systems seem to have this problem more often since BSD
does things differently.
The following program fragment is my solution.
/* ----------------------- cut here --------------------------------*/
#define PAGESIZE 2048
#define NULL 0
#include <sys/signal.h>
volatile int dangerflag;
void free();
int main()
{ int size, *ptr;
void handler();
char *MALLOC();
/* ensure your favorite program catches sigdanger */
signal(SIGDANGER,handler);
/*************************************************************
your favorite memory hogging program which uses MALLOC to
allocate storage (not malloc)
*************************************************************/
size = ????;
ptr = MALLOC(size);
....
....
}
void handler()
{
/* sigdanger is sent when the number of paging slots drops
below the pswarn threshold (see /etc/master to tailor this).
Setting this threshold to a higher level may help
even if you don't use the rest of this solution. */
dangerflag = 1;
}
/* MAXMEMSIZE is chosen to be the largest real memory configuration
supported on the RT */
#define MAXMEMSIZE 0x1000000
/* MALLOC is used to overcome the possibility of overcommitting the
page space */
char *MALLOC(size)
unsigned int size;
{
char *malloc();
char *p,*q;
int i;
volatile int *numps; /* number of paging slots from low memory */
/* Make sure dangerflag is initialized */
dangerflag = 0;
/* point to number of paging slots in AIX low memory */
numps = (int *)0xb8;
/* ensure there is enough backing storage to back all of
memory (note MAXMEMSIZE is as good as I can get here: that
is, a lessor value wouldn't work on machines with less
memory */
if ((*numps * PAGESIZE) < (size + MAXMEMSIZE)) return((char*)NULL);
/* call the real malloc to get the storage */
q = p = malloc(size);
if (p == (char *)NULL) return(p);
for(i = 0; i < size ; i += PAGESIZE)
{
/* touch and dirty the next page */
*q = 0;
/* Get out if we went below the pswarn threshold */
if (dangerflag) goto getout;
/* bump to the next page (note: must be careful to
touch on the next page boundary and not in the
middle of the page */
q = (char *)(((int)q & (~(PAGESIZE-1))) + PAGESIZE);
}
/* ensure there is still enough backing storage */
if ((*numps * PAGESIZE) < (size + MAXMEMSIZE)) goto getout;
return(p);
getout: /* There isn't enough space available */
free(p);
return((char *)NULL);
}
/* ------------------------- cut here -----------------------------*/
Disclaimer: The above program is already in the public domain and is posted
here without warranty (even though I know it works).
James Moody Adv Workstations Div ; IBM Austin, 2502
aesnet: moody@moody.austin.ibm.com
vnet: MOODY at AUSVM6
outside -> ..!cs.utexas.edu!ibmchs!auschs!moody.austin.ibm.com!moody
==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==
------------------------------
S.27 - ADDU setup and useage.
To use ADDU on PC/DOS systems, the RT needs the DOS Server program
(pci) lpp installed, and started from the /etc/rc.include startup script.
[ I was requested to add this entry, but I have absolutely no
experience with this product. Open for some kind soul to fill
it in with knowledge. - MW ]
================================================================================
*** FAQ Continued in software part 3 ***
=============== end of ibm-rt-faq/aix-v2/software/part2 ========================
--
Posted around the first of each month to comp.sys.ibm.pc.rt, and
to comp.unix.aix.
This FAQ is dedicated to use of the AIX Version 2 operating system, running
on the IBM RISC processor known as the RT. The RT is known also as
an IBM model 6150 or 6151 machine.
For AIX RT submissions E-mail to: aix-rt@antimatr.hou.tx.us
For AOS RT submissions E-mail to: aos-rt@antimatr.hou.tx.us
For MACH RT submissions E-mail to: mach-rt@antimatr.hou.tx.us
For general Q&A submissions (hardware and other stuff) E-mail to:
faq-rt@antimatr.hou.tx.us
Other comments and correctons should be sent to the author:
Mark Whetzel
DOMAIN addr: markw@antimatr.hou.tx.us
BANG address: ..!uhnix1!lobster!antimatr!markw
Daytime work number 8AM-5PM M-F CST VOICE: (713) 963-2544
--
AIX..... NOT just another UNIX. (tm)
Mark Whetzel | My own RT system.. My own thoughts..
DOMAIN: markw@antimatr.hou.tx.us | IBM RT/135 running AIX 2.2.1
UUCP ..!menudo!lobster!antimatr!markw | comp.sys.ibm.pc.rt FAQ maintainer.